package finance;

import java.util.Date;
import java.util.List;
import javax.jdo.PersistenceManager;

public class Lancamento
{
    public Long codLancamento = null;
    private long codLogin = 0;
    public double valorLancamento = 0;
    public Date dataLancamento = new Date();
    public String historicoLancamento = "";
    public String operacaoLancamento = "";

    public Date dataInicial = new Date();
    public Date dataFinal = new Date();

    public Long getCodLogin()
    {
        return Utils.codLogin;
    }

    public void setCodLogin( Long value )
    {
        codLogin = value;
    }

    public Double getvalorLancamento()
    {
        return valorLancamento;
    }

    public void setvalorLancamento( double value )
    {
        this.valorLancamento = value;
    }

    public Date getdataLancamento()
    {
        return dataLancamento;
    }

    public void setdataLancamento( Date value )
    {
        this.dataLancamento = value;
    }

    public String gethistoricoLancamento()
    {
        return historicoLancamento;
    }

    public void sethistoricoLancamento( String value )
    {
        this.historicoLancamento = value;
    }

    public String getoperacaoLancamento()
    {
        return operacaoLancamento;
    }

    public void setoperacaoLancamento( String value )
    {
        this.operacaoLancamento = value;
    }

    public Date getdataInicial()
    {
        return dataInicial;
    }

    public void setdataInicial( Date value )
    {
        this.dataInicial = value;
    }

    public Date getdataFinal()
    {
        return dataFinal;
    }

    public void setdataFinal( Date value )
    {
        this.dataFinal = value;
    }

    
    public void IncluiLancamento()
    {
       Entidadelancamento entidadelancamento = new Entidadelancamento( codLogin, valorLancamento, historicoLancamento, dataLancamento, operacaoLancamento );

       PersistenceManager pm = PMF.get().getPersistenceManager();

       try
         {
            pm.makePersistent( entidadelancamento );
         }
       finally
         {
            pm.close();
         }
    }


    public void ExcluiLancamento()
    {
        PersistenceManager pm = PMF.get().getPersistenceManager();

        String query = "select from " + Entidadelogin.class.getName() + " where codLancamento == " + codLancamento;

        List<Entidadelancamento> entidade = (List<Entidadelancamento>) pm.newQuery(query).execute();

        if (entidade.size() > 0)
        {
            try
            {
                pm.deletePersistent(entidade.get(0));
            }
            finally
            {
                pm.close();
            }
        }
    }

    public void ListaLancamento()
    {
        PersistenceManager pm = PMF.get().getPersistenceManager();

        String query = "select from Entidadelancamento where codLogin == " + codLogin + " and dataLancamento >= " + dataInicial + " and dataLancamento <= " + dataFinal;

        List<Entidadelancamento> entidadelancamentos = (List<Entidadelancamento>) pm.newQuery(query).execute();
    }

}
